﻿using CommonUtils.Attributes;
using System;
using System.Collections.Generic;
using System.ComponentModel;

namespace ScanFile.Model{

  [DBTable("folderEx")]
  public class FolderEx {

		private System.String _id;
    [DBColumn("id", true)]
    [BrowsableAttribute(false)]
    public System.String Id {
			get{ return _id; }
			set{ _id = value; }
		}

		private System.String _parent;
    [DBColumn("parent")]
    [BrowsableAttribute(false)]
    public System.String Parent {
			get{ return _parent; }
			set{ _parent = value; }
		}

		private System.String _diskLabel;
    [DBColumn("diskLabel")]
    [Description("文件所在磁盘盘符"), DisplayName("磁盘"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.String DiskLabel{
			get{ return _diskLabel; }
			set{ _diskLabel = value; }
		}

		private System.String _diskNumber;
    [DBColumn("diskNumber")]
    [Description("文件所在磁盘序列号"), DisplayName("磁盘号"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.String DiskNumber{
			get{ return _diskNumber; }
			set{ _diskNumber = value; }
		}

		private System.Int64 _folderLevel;
    [DBColumn("folderLevel")]
    [BrowsableAttribute(false)]
    public System.Int64 FolderLevel{
			get{ return _folderLevel; }
			set{ _folderLevel = value; }
		}

		private System.String _folderName;
    [DBColumn("folderName")]
    [Description("文件夹名称"), DisplayName("文件夹名"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.String FolderName{
			get{ return _folderName; }
			set{ _folderName = value; }
		}


    [BrowsableAttribute(false)]
    public System.String DisplayName {
      get {
        return _folderName;
      }
    }

    private System.String _folderFullName;
    [DBColumn("folderFullName")]
    [Description("文件夹全路径"), DisplayName("路径"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.String FolderFullName{
			get{ return _folderFullName; }
			set{ _folderFullName = value; }
		}

    [BrowsableAttribute(false)]
    public System.String FullName {
      get {
        return _folderFullName;
      }
    }

    private System.String _lastAccessTime;
    [DBColumn("lastAccessTime")]
    [Description("文件夹最后访问时间"), DisplayName("最后访问"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.String LastAccessTime{
			get{ return _lastAccessTime; }
			set{ _lastAccessTime = value; }
		}

		private System.String _lastWriteTime;
    [DBColumn("lastWriteTime")]
    [Description("文件夹上次修改时间"), DisplayName("修改时间"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.String LastWriteTime{
			get{ return _lastWriteTime; }
			set{ _lastWriteTime = value; }
		}

		private System.Int64 _subfolderCount;
    [DBColumn("subfolderCount")]
    [Description("子文件夹数量"), DisplayName("子文件夹数"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.Int64 SubfolderCount{
			get{ return _subfolderCount; }
			set{ _subfolderCount = value; }
		}

		private System.Int64 _fileCount;
    [DBColumn("fileCount")]
    [Description("当前文件夹下的文件数，不包括子级文件夹"), DisplayName("文件数"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.Int64 FileCount{
			get{ return _fileCount; }
			set{ _fileCount = value; }
		}

		private System.String _recordTime;
    [DBColumn("recordTime")]
    [BrowsableAttribute(false)]
    public System.String RecordTime{
			get{ return _recordTime; }
			set{ _recordTime = value; }
		}

		private System.String _scanTime;
    [DBColumn("scanTime")]
    [Description("扫描文件的时间"), DisplayName("扫描时间"), CategoryAttribute("文件夹信息"), ReadOnlyAttribute(false)]
    public System.String ScanTime{
			get{ return _scanTime; }
			set{ _scanTime = value; }
		}
	}
}
